<?php

use JetBrains\PhpStorm\NoReturn;

header("Content-Type: image/jpeg");

#[NoReturn] function getBingWallpaperUHD(): void
{
    $bingApiUrl = "https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=zh-CN";

    // 获取 JSON 数据
    $response = file_get_contents($bingApiUrl);
    if (!$response) {
        http_response_code(500);
        exit("无法获取 Bing 壁纸数据");
    }

    $data = json_decode($response, true);
    if (!isset($data['images'][0]['url'])) {
        http_response_code(500);
        exit("解析 JSON 数据失败");
    }

    // 获取原始图片地址
    $baseUrl = "https://www.bing.com";
    $imageUrl = $data['images'][0]['url'];

    // 使用正则表达式替换分辨率部分为 UHD
    $uhdImageUrl = preg_replace('/_\d+x\d+(\.[a-zA-Z]+)/', '_UHD$1', $imageUrl);
    $fullUrl = $baseUrl . $uhdImageUrl;

    // 直接重定向到 Bing 壁纸的 4K 链接
    header("Location: $fullUrl");
    exit;
}

getBingWallpaperUHD();

